package com.hgkj.cloud.base.service;

import com.hgkj.cloud.base.domain.TenantFrameworks;

import java.util.List;
import java.util.Map;

public interface TenantFrameworksService {

    int deleteByPrimaryKey(Long id);

    int insert(TenantFrameworks record);

    int insertSelective(TenantFrameworks record);

    TenantFrameworks selectByPrimaryKey(Long id);

    int updateByPrimaryKeySelective(TenantFrameworks record);

    int updateByPrimaryKey(TenantFrameworks record);

    TenantFrameworks getFrameworkByName(Map<String, Object> map);

    List<TenantFrameworks> getFrameworkByFatherid(Map<String, Object> map);

    List<TenantFrameworks> getFrameworkByMap(Map<String, Object> map);

    TenantFrameworks getFrameworkById(Long id);

    List<TenantFrameworks> listAllFramework(Map<String, Object> map);

    int delFramework(Long id);

    List<TenantFrameworks> listFrameworksByTaskuuid(Map<String, Object> map);

    List<TenantFrameworks> listFrameworksByQnTaskid(Map<String, Object> map);

    List<TenantFrameworks> listAllFrameworkByTenantId(Map<String, Object> map);

    //base
    List<TenantFrameworks> getFramByTenant(Map map);
    int updateFrameworkCreateDate(TenantFrameworks string);
    int deleteFrameworkCreateDate();

    TenantFrameworks getFrameworkDataByMap(Map<String, Object> map);

    List<TenantFrameworks> listAllFrameworkByMap(Map<String, Object> map);
    List<TenantFrameworks> listAllSonFrameworkByFatherId(Long fatherId);

    long listAllFrameworkCountByMap(Map<String, Object> map);

    List<TenantFrameworks> listAllTenantFrameworksByParentAndLevel(Map<String, Object> map);

    List<TenantFrameworks> listAllChildrenByParentAndLevel(Long parentId, int level);
}
